package com.nbsaas.boot.otp.utils;

public class OTPValidationExample {

    public static void main(String[] args) throws Exception {
        // 服务端生成的密钥（需存储在数据库中，每个用户唯一）
        String secretKey = TOTPUtil.generateSecretKey();
        System.out.println("Secret Key: " + secretKey);
        // 模拟用户的动态密码生成（用户通过 TOTP 应用生成）
        String generatedOTP = TOTPUtil.generateTOTP(secretKey);
        System.out.println("Generated OTP: " + generatedOTP);

        // 用户输入的动态密码（模拟客户端提交）
        // 正确的 OTP
        // String userInputOTP = "123456";  // 错误的 OTP

        // 验证 OTP
        boolean isValid = TOTPUtil.validateTOTP(secretKey, generatedOTP);

        if (isValid) {
            System.out.println("OTP 验证成功！");
        } else {
            System.out.println("OTP 验证失败！");
        }
    }
}
